<template>
  <!-- 柱状图 -->
  <div
    style="width: 1200px; height: 600px; margin: 30px auto"
    id="chart"
  ></div>
</template>

<script>
export default {
  data() {
    return {};
  },
  mounted() {
    this.chart();
  },
  methods: {
    // 条形统计图
    chart() {
      //初始化
      var myCharts = this.$echarts.init(document.getElementById("chart"));
      // 配置项
      var option = {
        //网格：x轴和y轴是基于网格显示，没有这个对象时，不显示网格
        grid: {
          top: "15%",
          //   right: "3%",
          left: "5%",
          //   bottom: "20%",
        },
        //标题配置
        title: {
          text: "不合格品库存金额趋势图", //标题，加‘\n’可换行
          textStyle: {
            //文本样式
            fontWeight: "800",
          },
          left: "center",
        },
        // 图例
        legend: {
          left: "center",
          top: "25",
        },
        // x轴
        xAxis: {
          type: "category", //类目轴
          data: [
            "FY20 Avg",
            "FY21 target",
            "Jan",
            "Feb",
            "Mar",
            "Apr",
            "May",
            "Jun",
            "Jul",
            "Aug",
            "Sep",
            "Oct",
            "Nov",
            "Dec",
          ],
          position: "bottom", //x轴位置：top或bottom（默认）
          axisLabel: {
            interval: 0,
          },
        },
        // y轴
        yAxis: {
          type: "value", //数值轴，对应series中的data
          position: "left", //y轴位置，left (默认)或right
        },
        //数据筛选，需要配合series使用，data中的每一项对应name值
        series: [
          {
            name: "不合格品库存金额",
            type: "bar", //类型：bar：柱状图，line：折线图，pie：饼装图
            data: [
              103, 77, 135.6, 89.6, 69.5, 84.7, 55.63, 48.97, 71.72, 37.8, 30.5,
              26.9, 23.5, 26.8,
            ],
            
            //显示数值
            label: {
              show: true, //设置显示
              formatter: function (arg) {
                //通过回调函数动态显示文字内容,percent:所占百分比
                return arg.value;
              },
              position: "top",
            },
            //平均值
            markLine: {
              data: [{ type: "average", name: "平均值" }],
            },
            barWidth: "30%", //宽度
            //柱状图样式配置
            itemStyle: {
              normal: {
                color: function (e) {
                  if (e.dataIndex == 0) {
                    return "rgb(247,150,70)";
                  }
                  return "rgb(0,176,80)"
                },
              },
            },
          },
        ],
        // 提示
        tooltip: {
          trigger: "item",
          showContent: true,
          //   trigger: "item", //触发类型：放在图上
          //   trigger: "axis", //触发类型：放在坐标轴上
          //   triggerOn: "mouseover", //触发方式：click：点击，mouseover：鼠标移入(默认)
          formatter: function (arg) {
            //提示文字也可以是个回调函数
            // return arg[0].name + ":" + arg[0].data;
            return arg.name + ":" + arg.value;
          },
        },
      };
      myCharts.setOption(option);
    },
  },
};
</script>

<style>
</style>